QueryPieとBigQueryをつないでSQLで動かしてみた
巷で噂のSaaS型のデータ保護プラットフォームQueryPieと皆大好きBigQueryをつなげていじってみました。
QueryPieがなんかわからん!という人は以下記事をご覧ください。
前提条件
今回の作業にあたっての前提条件になります。
- GCPのプロジェクトは作成済
- GCPのサービスアカウントも作成済
- BigQueryにデータ入れてる状態
補足ですがGCPのサービスアカウントはオーナー権限のもので「Compute Engine API」を有効化してます。
QueryPieにBigQueryのデータベースを登録
まずQueryPieにBigQueryのデータベースを登録するところからやります。
上部メニューのSettings > Database Settingsに遷移して、左メニューのDB Connectionsを選択し右上のCreate Connectionをクリックします。
接続するデータベースを選択する画面が出てくるのでBigQueryを選択します。
次の画面でつなぐ諸々入力します。
以下は今回入力した内容です。
- Allowed Zone…Default
- Connection Name…kunisaki-bigquery
- Project ID…今回のBigQueryで使うGCPプロジェクトID
- GCP Region…GCPのリージョン
- Service Account…GCPのサービスアカウントのJSON
右下のTest Connectionで問題なければ次の画面へ。
これでQueryPieにBigQueryのデータベースが登録されました。
アクセスコントロールでユーザーに書込権限を付与
Database Settings内の左メニューAccess Controlをクリックし、データベースに読み書きできる権限を付与するユーザーを選択します。
ユーザーを選択したら登録したBigQueryのデータベース権限をRead/Writeに変更します。
これでQueryPieからBigQueryのデータベースをいじる権限が付与できました。
QueryPieからBigQueryをSQLでいじる
QueryPieからBigQueryのデータベースをいじってみます。
上部メニューのDatabases > Connectionsから登録したBigQueryに接続します。
SQLを書けばBigQueryに接続してるデータベースを読むことができます。
Export
上部メニューのExportを押すとBigQuery内のテーブルを指定してCSV/JSON/EXCELで書き出すことができます。
SQL Request
上部メニューのSQL Requestを押すとワークフローが立ち上がり、承認プロセスなどを設定することができます。
データを上書きしてみる
QueryPieでSQLを書いてBigQueryのテーブルにレコードを追加してみます。
左上の「Run SQL」で実行するとBigQuery内のデータにもレコードが追加されました。
以上がQueryPieでBigQueryのデータベースを登録し、SQLで動かしてみた!の検証になります。
まとめ
今回つないだデータベースがBigQueryだけだったので何ちゃない検証作業でしたが、こういったアクセス制御をしたいデータベースやサーバーが複数あり、かつ複数人に権限を付与したい場合はQueryPieのようなデータガバナンス製品が役立つと思います。